HIVE数据表的导入导出

您所在的位置:网站首页 row format delimited fields HIVE数据表的导入导出

HIVE数据表的导入导出

2022-06-12 11:29| 来源: 网络整理| 查看: 265

一、MYSQL与HIVE

mysql导入hive

sqoop import –connect jdbc:mysql://IP:3306/dbname –username xxx –password xxx –table table1 –hive-import –hive-overwrite –create-hive-table –hive-table dbname.table1 hive导入mysql

Sqoop export –connect jdbc:mysql://127.0.0.1:3306/dbname –username mysql(mysql用户名) –password 123456(密码) –table student(mysql上的表) –hcatalog-database sopdm(hive上的schema) –hcatalog-table student(hive上的表)

二、文件与HIVE

hive导出到文件

1.1. hive>导出到本地

insert overwrite local directory ‘/home/username/a’

row format delimited

fields terminated by ‘,’

select * from dbname.table;

注1:当前用户必须对'/home/username/a'有读写权限。 注2:此方式文件分隔符默认为^A

1.2 命令行hive导出

hive -e "select * from dhtest.temp_uv" >> res1.csv 注1:文件默认以\t作为分隔符,此方法适用于字段内容中不包含特殊字符\t hive -e "select * from pms.pms_algorithm_desc" | sed 's/\t/,/g' > ./aaa.txt

文件导入hive

a.第一步

CREATE TABLE csv_table(a string, b string)

ROW FORMAT SERDE ‘org.apache.Hadoop.hive.serde2.OpenCSVSerde’

WITH SERDEPROPERTIES

( “separatorChar” = “\t”, “quoteChar” = “’”, “escapeChar” = “\”) STORED AS TEXTFILE;

separatorChar:分隔符

quoteChar:引号符

escapeChar:转意符

或者CREATE TABLE csv_table(a string, b string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\001’;

或者CREATE TABLE csv_table(a string, b string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘^A’;

b. 第二步

load data local inpath ‘/data/user1.csv’ into table csv_table;



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3